<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // Promise实例的方法

  // const p = new Promise((a, b)=>{
  //   setTimeout(()=>{
  //     a("ok")
  //   }, Math.random()*100)
  //   setTimeout(()=>{
  //     b("no")
  //   }, Math.random()*100)
  // })

  // p.then((res)=>{
  //   console.log(res)
  // }, (code)=>{
  //   console.log(1, code)
  // })
  // p.catch((code)=>{
  //   console.log(2, code)
  // })
  // p.finally(()=>{
  //   console.log("结束了");
  // })

  // then的第二个参数
  // finally方法

  // =========

  // Promise类的方法

  // 绝对创建一个成功状态的Promise实例
  const p1 = Promise.resolve("hello");
  console.log(p1);
  p1.then(res=>{
    console.log(res)
  })
  // 绝对不会触发catch
  p1.catch(res=>{
    console.log(res)
  })

  // 绝对创建一个失败状态的Promise实例
  const p2 = Promise.reject("world");
  console.log(p2);
  // 绝对不会触发then
  p2.then((res)=>{
    console.log(res);
  })
  p2.catch((res)=>{
    console.log(res);
  })


</script>
</html>